#ifndef _CONSOLE_CTRL_H_
#define _CONSOLE_CTRL_H_

/* font color*/
#define FONT_BLACK  30
#define FONT_RED    31
#define FONT_GREEN  32
#define FONT_YELLOW 33
#define FONT_BLUE   34
#define FONT_PURPLE 35
#define FONT_CYAN   36
#define FONT_WHITE  37
/* background color*/
#define BLACKGROUND_BLACK   40
#define BLACKGROUND_RED     40
#define BLACKGROUND_GREEN   40
#define BLACKGROUND_YELLOW  40
#define BLACKGROUND_BLUE    40
#define BLACKGROUND_PURPLE  40
#define BLACKGROUND_CYAN    40
#define BLACKGROUND_WHITE   40
/* text style */
#define STYLE_BOLD  1
#define STYLE_LINE  4
#define STYLE_SHINE 5
#define STYLE_INVERT 7

/* default set */
#define DEFAULT_MONITOR_SET 0

int GetWinsize(int *row, int *column);
void CursorMoveUpOneRow();
void CursorMoveDownOneRow();
void CursorMoveRightOneColumn();
void CursorMoveLeftOneColumn();
void CursorMoveToColumn(int n);
void CursorMoveToPoint(int row, int column);
void CursorMoveToLeftTop();
void CursorSavePoint();
void CursorRestorePoint();
void ClearWindows();
void ClearAfterCursor();
void ClearBeforeCursor();
void CursorHide();
void CursorShow();
void ClearLineAfterCursor();
void RollingUpOneLine();
void RollingDownOneLine();
void SetColorStyle(int ct);
void CursorMoveToLeftBeginAndClearAfter();

#endif  /* _MONITOR_H_ */
